﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace WebApp.Models
{
    /// <summary>
    /// 统一服务号消息
    /// </summary>
    public class SendMsgModel
    {
        /// <summary>
        /// 	接口调用凭证
        /// </summary>
        public string access_token { get; set; }
        /// <summary>
        /// 用户openid，可以是小程序的openid，也可以是mp_template_msg.appid对应的公众号的openid
        /// </summary>
        public string touser { get; set; }
        public WeappTemplateMsg weapp_template_msg { get; set; }
        public MpTemplateMsg mp_template_msg { get; set; }

    }
    /// <summary>
    /// 小程序消息
    /// </summary>
    public class WeappTemplateMsg
    {
        /// <summary>
        /// 小程序模板ID
        /// </summary>
        public string template_id { get; set; }
        /// <summary>
        /// 小程序页面路径
        /// </summary>
        public string page { get; set; }
        /// <summary>
        /// 小程序模板消息formid
        /// </summary>
        public string form_id { get; set; }
        /// <summary>
        /// 小程序模板数据	
        /// </summary>
        public object data { get; set; }
        /// <summary>
        /// 小程序模板放大关键词
        /// </summary>
        public string emphasis_keyword { get; set; }

    }
    /// <summary>
    /// 公众号消息
    /// </summary>
    public class MpTemplateMsg {
        /// <summary>
        /// 公众号appid，要求与小程序有绑定且同主体
        /// </summary>
        public string appid { get; set; }
        /// <summary>
        /// 公众号模板id
        /// </summary>
        public string template_id { get; set; }
        /// <summary>
        /// 公众号模板消息所要跳转的url
        /// </summary>
        public string url { get; set; }
        /// <summary>
        /// 公众号模板消息所要跳转的小程序，小程序的必须与公众号具有绑定关系
        /// </summary>
        public object miniprogram { get; set; }
        /// <summary>
        /// 公众号模板消息的数据
        /// </summary>
        public object data { get; set; }

    }
    /// <summary>
    /// 模板消息
    /// </summary>
    public class TemplateMessage {
        /// <summary>
        /// 接口凭证-
        /// </summary>
        public string access_token { get; set; }
        /// <summary>
        /// 接收者（用户）的 openid
        /// </summary>
        public string touser { get; set; }
        /// <summary>
        /// 所需下发的模板消息的id
        /// </summary>
        public string template_id { get; set; }
        /// <summary>
        /// 点击模板卡片后的跳转页面，仅限本小程序内的页面。支持带参数,（示例index?foo=bar）。该字段不填则模板无跳转。
        /// </summary>
        public string page { get; set; }
        /// <summary>
        /// 表单提交场景下，为 submit 事件带上的 formId；支付场景下，为本次支付的 prepay_id
        /// </summary>
        public string form_id { get; set; }
        /// <summary>
        /// 模板内容，不填则下发空模板。具体格式请参考示例。
        /// </summary>
        public object data { get; set; }
        /// <summary>
        /// 模板需要放大的关键词，不填则默认无放大
        /// </summary>
        public string emphasis_keyword { get; set; }

    }
}
